/*
  该文件专门用于暴露一个store对象，整个应用只有一个store对象
*/
// 引入createStore，专门用于创建redux中最为核心的store对象
import { legacy_createStore as createStore,  applyMiddleware, combineReducers } from 'redux';
// 引入为Count组件服务的reducer
import countReducer from './count_reducer'
// 引入为Person组件服务的reducer
import personReducer from './person_reducer'
// 引入redux-thunk，用于支持异步任务
import thunk from 'redux-thunk'


// 汇总所有的reducer变为一个总的reducer
// combineReducers调用时传入的对象就是redux帮我们保存的总的状态对象
const allReducer = combineReducers({
  count: countReducer,
  persons: personReducer
})

// 暴露store
// export default createStore(countReducer)

export default createStore(allReducer, applyMiddleware(thunk))
